package com.chen.blue.domain.dto.business;

import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * Created By CLT On 2024/5/26.
 */
@SuppressWarnings("all")
@Getter
@Setter
@ApiModel("竞赛人员添加参数")
public class ContestPersonInfoDto implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "ID(ID有就带上)", required = true)
    private Long id;

    @JsonIgnore
    private Long applyId;

    @JsonIgnore
    private Long recordId;

    @JsonIgnore
    private Long activeId;

    /**
     * 学生姓名
     */
    @Length(max = 20, message = "学生姓名不能超过20个字符")
    @NotNull(message = "学生姓名不能为空")
    @ApiModelProperty(value = "学生姓名")
    private String nameStudent;

    /**
     * 学号
     */
    @Length(max = 11, message = "学号不能超过11个字符")
    @NotNull(message = "学号不能为空")
    @ApiModelProperty(value = "学号")
    private String numberId;

    /**
     * 专业
     */
    @Length(max = 20, message = "专业不能超过20个字符")
    @NotNull(message = "专业不能为空")
    @ApiModelProperty(value = "专业")
    private String major;

    /**
     * 身份证号码
     */
    @Length(max = 18, message = "身份证号码不能超过18个字符")
    @NotNull(message = "身份证号码不能为空")
    @ApiModelProperty(value = "身份证号码")
    private String identityCard;

    /**
     * 学生手机号
     */
    @Length(max = 11, message = "学生手机号不能超过11个字符")
    @NotNull(message = "学生手机号不能为空")
    @ApiModelProperty(value = "学生手机号")
    private String numberPhoneStudent;

    /**
     * 指导老师手机号
     */
    @Length(max = 11, message = "指导老师手机号不能超过11个字符")
    @NotNull(message = "指导老师手机号不能为空")
    @ApiModelProperty(value = "指导老师手机号")
    private String numberPhoneTeacher;

    /**
     * 指导老师姓名
     */
    @Length(max = 20, message = "指导老师姓名不能超过20个字符")
    @NotNull(message = "指导老师姓名不能为空")
    @ApiModelProperty(value = "指导老师姓名")
    private String nameTeacher;

    /**
     * 指导老师部门
     */
    @NotNull(message = "指导老师部门不能为空")
    @ApiModelProperty(value = "指导老师部门")
    private Long deptId;

    private String creator;

}
